﻿using System.ServiceModel;

namespace Needle.Bus.Transport
{

    public interface ITransport : ICommunicationObject, IExtensibleObject<ITransport>
    {
        
        IChannel<T> OpenChannel<T>(string channelName);

        void RegisterEndPoint<T>(IEndPoint<T> endPoint);

        void UnregisterEndPoint<T>(IEndPoint<T> endPoint);

    }

}
